/**
 * 名晟中鑫是一家专业数字化、智慧化研发和运营的服务提供商，公司本着“星火燎原、创新创业、科技顶天、服务立地”的发展理念，
 * 致力于新型智慧城市的建设和运营，业务包括智慧城市顶层设计咨询、互联网+、智慧政务、智慧医疗、智慧社区、智慧交通、智慧农业、智慧教育、智慧应急等。
 * 积极构建以政府为主导，企业和市民为主体、市场为导向、产学研相结合的推进体系，资源有效整合与共享，不断增强建设智慧城市建设的整体合力，
 * 真正推动民众生存智慧化。
 **/
package com.piao.controller;

import com.piao.common.ErrorEnum;
import com.piao.common.Result;
import com.piao.exception.DefinitionException;
import com.piao.utils.ParseUtils;
import com.piao.vo.ParseResultVO;
import org.apache.hc.client5.http.classic.methods.HttpGet;
import org.apache.hc.client5.http.impl.classic.CloseableHttpClient;
import org.apache.hc.client5.http.impl.classic.CloseableHttpResponse;
import org.apache.hc.client5.http.impl.classic.HttpClientBuilder;
import org.apache.hc.core5.http.io.entity.EntityUtils;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

import java.io.IOException;
import java.net.http.HttpClient;

/**
 * @author 王浦伟
 * @version 1.0.0
 * @ClassName ParseController
 * @Description 解析视图层
 * @createTime 2024年08月02日 15:22
 */
@RestController
@RequestMapping("/parse")
public class ParseController {

    @GetMapping
    public Result<ParseResultVO> parseUrl(@RequestParam String url) throws Exception {
        ParseResultVO result = null;
        if (url.contains("douyin.com")) {
            result = ParseUtils.douyin(url);
        } else if(url.contains("kuaishou.com")) {
            result = ParseUtils.kuiashou(url);
        } else if(url.contains("pipix.com")) {
            result = ParseUtils.pipix(url);
        }

        if (result != null) {
            return new Result<>(true, ErrorEnum.SUCCESS.getErrorCode(), ErrorEnum.SUCCESS.getErrorMsg(), result);
        } else {
            return new Result<>(true, ErrorEnum.INTERNAL_SERVER_ERROR.getErrorCode(), ErrorEnum.INTERNAL_SERVER_ERROR.getErrorMsg(), result);
        }

    }


}